In recent years, the demand for data storage has rapidly increased. Traditionally, in order to store a large amount of data, users employ various devices and methods, such as additional storage devices and upgrades to existing hardware. Efficient use of data storage capacity is facilitated by managing free space on storage devices, purging data that is no longer needed, and so on.
Cloud storage has become more popular in recent years. The “cloud” is a metaphorical term that refers to a distributed environment for data processing and storage over a network of connected processing and storage resources. Cloud technology provides a user with convenient access to all such resources on the cloud. For example, many cloud storage solutions require only minimal management for the user. Cloud storage provides users with immediate access to a broad range of resources and applications that are hosted in the infrastructure of remote network resources, via a web service interface. Cloud systems may also be advantageous because they often have redundancy and durability built in. As such, data storage may be more reliable in a redundant cloud storage system than in other non-cloud systems.
By storing files on the cloud storage system, the user can remotely access and download files. For example, a user can transfer a file from a desktop computer to the cloud-based storage, and then later the user can access that file from a different computing device.
Any given stand-alone computer or data processing system will have a finite (albeit large) data storage capacity. By contrast, the sum total of all of the storage resources potentially available on the cloud may be regarded as unlimited. However, due to limitations in the throughput and transfer speed between the user's local system and the cloud, users have found it to be cumbersome to store data in cloud storage systems. For example, when a large amount of data is to be stored in the cloud, the user's computer must remain on, and must remain connected to a communication network, (such as the internet) for the duration of the data transfer. In addition, large transfers over existing means such as through a web browser often fail and require the user to make multiple attempts at uploading.
Managing the data stored on the cloud can be cumbersome. For example, when a user performs operations such as move, rename, and add folders, and so on, with the original files that are directly uploaded in the cloud, the cloud storage resources may employ application processes and procedures that are different from those to which the user is accustomed on the local system. The process of moving files may additionally be cumbersome, if it is done via a cloud application rather than using local file system operations.
In light of the aforementioned reasons, it appears that there is a need to introduce a method and system which allows a device to automatically upload to a cloud account and also facilitate automatic removal of the uploaded files from the device, so that the device's storage capacity is not limited or reduced by the current or past presence of the uploaded data. These and other drawbacks associated with conventional systems of storing data at a local storage device or through the cloud exist.